package com.jy.rhin.config;

import com.alibaba.nacos.spring.context.annotation.config.NacosRefresh;
import com.jy.api.hospital.HospitalAPI;
import com.jy.api.hospital.HospitalAPIImpl;
import com.jy.api.okhttp.HospitalClient;
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;

/**
 * 机构及职工 请求信息
 *@className(类名称):  HospitalConfig
 *@description(类描述):
 *@author(创建人):  zsh
 *@createDate(创建时间):  2024年8月5日 上午10:28:46
 *@updateUser(修改人):  zsh
 *@updateDate(修改时间):  2024年8月5日 上午10:28:46
 *@updateRemark(修改备注):
 *@version(版本):  v1.0
 */
@Slf4j
@Getter
@Setter
@Component
@NacosRefresh
@Configuration
@ConfigurationProperties(prefix = "com.cowinhealth.hospital")
public class HospitalConfig {

	/**
	 * 机构相关 url
	 */
	private Url Url;

	@Getter
	@Setter
	public static class Url {
		/**
		 * 编辑机构url
		 */
		private String editOrgPath;

		/**
		 * 查询机构相关URL
		 */
		private String selectOrgPath;

		/**
		 * 根据Id查询相关URL
		 */
		private String findOrgByIdPath;

		/**
		 * 编辑职工url
		 */
		private String editEmployeePath;

		/**
		 * 查询职工相关URL
		 */
		private String selectEmployeePath;

		/**
		 * 机构详细信息
		 */
		private String orgDetailById;
	}
    @Bean
    @ConditionalOnMissingBean
    public HospitalAPI hospitalAPI(HospitalClient client){
        return new HospitalAPIImpl(client);
    }

}
